attribute vec3 aPosition;    attribute vec3 aNormal;    attribute vec2 aTexCoord;        varying vec3 vNormal;    varying vec2 vTexCoord;        uniform mat4 uModelMatrix;    uniform mat4 uViewMatrix;    uniform mat4 uProjMatrix;        void main(void) {gl_Position = uProjMatrix * uViewMatrix * uModelMatrix * vec4(aPosition, 1); vNormal = mat3(uViewMatrix * uModelMatrix) * normalize(aNormal); vTexCoord = aTexCoord;    }